d7cd7b81ee2b8400e495453751f6025eed5a9600,src/be/ibridge/kettle/trans/step/xmloutput/XMLOutput.java,XMLOutput,formatField,#Value#number#,195
Before Change
{
if (v.isNull())
{
if (field.getNullString()!=null) retval=field.getNullString();
else retval = "";
}
else
After Change
{
if (v.isNull())
{
if (!Const.isEmpty(field.getNullString()))
{
retval=field.getNullString();
}
else
{
retval = Const.NULL_NUMBER;
}
}
else
{
// Formatting
if ( !Const.isEmpty(field.getFormat()) )
{
data.df.applyPattern(field.getFormat());
}
else
{
data.df.applyPattern(data.defaultDecimalFormat.toPattern());
}
// Decimal
if ( !Const.isEmpty( field.getDecimalSymbol()) )
{
data.dfs.setDecimalSeparator( field.getDecimalSymbol().charAt(0) );
}
else
{
data.dfs.setDecimalSeparator( data.defaultDecimalFormatSymbols.getDecimalSeparator() );
}
// Grouping
if ( !Const.isEmpty( field.getGroupingSymbol()) )
{
data.dfs.setGroupingSeparator( field.getGroupingSymbol().charAt(0) );
}
else
{
data.dfs.setGroupingSeparator( data.defaultDecimalFormatSymbols.getGroupingSeparator() );
}
// Currency symbol
if ( !Const.isEmpty( field.getCurrencySymbol()) )
{
data.dfs.setCurrencySymbol( field.getCurrencySymbol() );
}
else
{
data.dfs.setCurrencySymbol( data.defaultDecimalFormatSymbols.getCurrencySymbol() );
}
data.df.setDecimalFormatSymbols(data.dfs);
if (v.isBigNumber())
{
retval=data.df.format(v.getBigNumber());
}
else if (v.isNumber())
{
retval=data.df.format(v.getNumber());
}
else // Integer
{
retval=data.df.format(v.getInteger());
}
}
}
else
{
if (v.isNull())
{
if (idx>=0 && field!=null && !Const.isEmpty(field.getNullString()))
{
retval=field.getNullString();
}
else
{
retval = Const.NULL_NUMBER;
}
}
else
{
retval=v.toString();
}
}
}
else
if (v.isDate())
{
if (idx>=0 && field!=null && !Const.isEmpty(field.getFormat()) && v.getDate()!=null)
{
if (!Const.isEmpty(field.getFormat()))
{
data.daf.applyPattern( field.getFormat() );
}
else
{
data.daf.applyPattern( data.defaultDateFormat.toPattern() );
}
data.daf.setDateFormatSymbols(data.dafs);
retval= data.daf.format(v.getDate());
}
else
{
if (v.isNull() || v.getDate()==null)
{
if (idx>=0 && field!=null && !Const.isEmpty(field.getNullString()))
{
retval=field.getNullString();
}
else
{
retval = Const.NULL_DATE;
}
}
else
{
retval=v.toString();
}
}
}
else
if (v.isString())
{
if (v.isNull() || v.getString()==null)
{
if (idx>=0 && field!=null && !Const.isEmpty(field.getNullString()))
{
retval=field.getNullString();
}
else
{
retval = Const.NULL_STRING;
} }
else
{
retval=v.toString();
}
}
else if (v.isBinary())
{
if (v.isNull())
{
if (!Const.isEmpty(field.getNullString()))
{
retval=field.getNullString();
}
else
{
retval=Const.NULL_BINARY;
}
}
else
{
try
{
retval=new String(v.getBytes(), "UTF-8");
}
catch (UnsupportedEncodingException e)
{
// chances are small we'll get here. UTF-8 is
// mandatory.
retval=Const.NULL_BINARY;
}
}
}
else // Boolean
{
if (v.isNull())
{
if (idx>=0 && field!=null && !Const.isEmpty(field.getNullString()))
{
retval=field.getNullString();
}
else
{
retval = Const.NULL_BOOLEAN;
}
}
else